Skip to content

feat(ci): build bindings for ARM linux#7652

Merged
DennisOSRM merged 3 commits into
masterfrom
dlx/linux-arm-bindings
Jul 10, 2026
Merged

feat(ci): build bindings for ARM linux#7652
DennisOSRM merged 3 commits into
masterfrom
dlx/linux-arm-bindings

Conversation

@DennisOSRM

@DennisOSRM DennisOSRM commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Implements #7651

Tasklist

Requirements / Relations

Link any requirements here. Other pull requests this PR is based on?

Copilot AI review requested due to automatic review settings July 9, 2026 09:47

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the main CI workflow to add a Linux ARM64 build variant that also builds the project’s language bindings, extending the existing “bindings” build pattern beyond x86_64.

Changes:

  • Renames the Linux ARM64 release matrix entry to a “-bindings” variant.
  • Enables build_bindings: true for the Linux ARM64 runner so Node and Python binding packaging steps run.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/osrm-backend.yml Outdated
Comment on lines 399 to 403
- name: linux-arm64-release-bindings
build_bindings: true
continue-on-error: false
node: 24
runs-on: ubuntu-24.04-arm
Comment on lines +399 to +400
- name: linux-arm64-release-bindings
build_bindings: true
@codecov

codecov Bot commented Jul 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.75%. Comparing base (563571d) to head (45c0f66).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #7652      +/-   ##
==========================================
- Coverage   94.15%   90.75%   -3.40%     
==========================================
  Files         484      484              
  Lines       37690    37690              
==========================================
- Hits        35486    34206    -1280     
- Misses       2204     3484    +1280     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

…nylinux

The hard-coded -DVCPKG_TARGET_TRIPLET=x64-linux-release in CMAKE_ARGS
forced vcpkg to look for an x86_64 compiler inside the aarch64 manylinux
container, where none exists.  Replace it with per-architecture overrides
that set VCPKG_TARGET_TRIPLET as an environment variable (x64-linux-release
for x86_64, arm64-linux-release for aarch64), which the vcpkg CMake
toolchain reads.

Also switch the linux-arm64-release-bindings runner from ubuntu-24.04-arm
to ubuntu-26.04-arm to match the other Linux runners' baseline.
The base environment hard-codes x64-linux-release which forces vcpkg to
look for an x86_64 compiler inside the aarch64 manylinux container, where
none exists.  Append a second CMAKE_ARGS via a cibuildwheel override for
*-manylinux_aarch64 that shadows the triplet with arm64-linux-release.
The x86_64 build is unchanged since the override selector does not match.
@DennisOSRM DennisOSRM merged commit 21d0fbe into master Jul 10, 2026
26 of 27 checks passed
@DennisOSRM DennisOSRM deleted the dlx/linux-arm-bindings branch July 10, 2026 05:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants